Skip to content

fix: make openadapt quickstart the successful first-run path - #1122

Closed
abrichr wants to merge 1 commit into
mainfrom
codex/quickstart-simulate-rejected-write
Closed

fix: make openadapt quickstart the successful first-run path#1122
abrichr wants to merge 1 commit into
mainfrom
codex/quickstart-simulate-rejected-write

Conversation

@abrichr

@abrichr abrichr commented Aug 26, 2026

Copy link
Copy Markdown
Member

What changed

openadapt quickstart remains the only command shown in the first-run docs and success output. The launcher now sends users from that result to the first-workflow guide.

The advanced --simulate-rejected-write option names the exact condition it tests. The launcher forwards that option to Flow. --break-it remains a hidden deprecated alias and prints a warning, so existing scripts don't fail without notice.

This draft depends on Flow accepting --simulate-rejected-write and writing its report to run-rejected-write/REPORT.md. It must not merge before that behavior is available in the supported Flow release.

Checks

  • Full tests: 197 passed, 6 skipped
  • Ruff check and format check passed
  • The wheel and source archive built successfully
  • The public source-boundary check passed

@abrichr

abrichr commented Aug 27, 2026

Copy link
Copy Markdown
Member Author

Closing this one. The work is good and the rename is the right call, but it cannot merge yet, and this PR says so itself: "It must not merge before that behavior is available in the supported Flow release."

That condition is not met, and nothing is in flight to meet it.

Two hard dependencies on Flow, both unmet:

  1. The flag. This forwards --simulate-rejected-write to the engine. openadapt-flow has zero occurrences of that string — its CLI is --break-it throughout (openadapt_flow/__main__.py), and it even prints openadapt-flow tutorial --break-it to users. Latest release is 1.33.0; this repo pins openadapt-flow>=1.29.0,<2.0.0.

  2. The evidence path. This prints run-rejected-write/REPORT.md, but openadapt_flow/tutorial.py:657 writes run_dir=root / "run-broken".

So merging today breaks the advanced quickstart path twice over — and it breaks it for --break-it users too, since the deprecated alias now maps onto the new flag.

Why the green suite did not catch this. All three tests monkeypatch _invoke_flow, so they assert the launcher's argv and never execute Flow. "197 passed" is real but says nothing about the integration. Worth flagging because this PR drew three separate Codex review passes and none of them surfaced it — one lineage reviewing itself three times is one review, not three.

To land it, in this order: rename the flag in openadapt-flow (keeping --break-it as a deprecated alias there too), change its run dir to run-rejected-write, release it, raise the floor here to that version, then reopen. The branch codex/quickstart-simulate-rejected-write stays, so nothing is lost — reopen this PR rather than rewriting it.

Not closing for lack of merit. Closing because Codex is stopped, the Flow half does not exist, and an open PR that cannot merge is not a state worth holding during the drain.

Related: openadapt-desktop#135 was grouped with this as one first-run cluster. It has no technical coupling to this PR — no reference to quickstart, the flag, or this number anywhere in its diff — so I landed it on its own merits rather than holding it behind this blocker.

@abrichr abrichr closed this Aug 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant